﻿using static Modules.BankSpecialAccount.BankSpecialAccountConstants;

namespace Modules.BankSpecialAccount;

/// <summary>
/// 通用专户查询
/// </summary>
public class BankSpecialAccountQuery
{
    /// <summary>
    /// 搜索关键字
    /// </summary>
    public string? Keywords { get; set; }

    /// <summary>
    /// 项目Id
    /// </summary>
    public int? ProjectId { get; set; }

    /// <summary>
    /// 实名制平台专户流水号精确查询
    /// </summary>
    public string? Code { get; set; }

    /// <summary>
    /// 专户账号信息
    /// </summary>
    public string? BankNo { get; set; }

    /// <summary>
    /// 起始日期
    /// </summary>
    public string? StartDate { get; set; }

    /// <summary>
    /// 结束日期
    /// </summary>
    public string? EndDate { get; set; }

    /// <summary>
    /// 实名制平台专户流水号起始流水号，当为空时，按accBrook精确查询流水号；当不为空时，将返回大于等于accBrookBegin的流水号
    /// </summary>
    public string? Begin { get; set; }

    /// <summary>
    /// 账户状态(1 开户中, 2 正常,3 补办,4 挂失,5 注销,6 冻结,7 其他)
    /// </summary>
    public 专户状态? AccountStatus { get; set; }

    /// <summary>
    /// 开户银行（银行代码）
    /// </summary>
    public string? BankType { get; set; }
}

/// <summary>
/// 银行柜面专用专户查询
/// </summary>
public class SpecialAccountWithBankQuery
{
    /// <summary>
    /// 实名制平台专户流水号精确查询
    /// </summary>
    public string? AccBrook { get; set; }
    /// <summary>
    /// 专户账号信息
    /// </summary>
    public string? BankAccount { get; set; }
    /// <summary>
    /// 机构号
    /// </summary>
    public string? BankCode { get; set; }
    /// <summary>
    /// 起始日期
    /// </summary>
    public DateTime? StartDate { get; set; }
    /// <summary>
    /// 结束日期
    /// </summary>
    public DateTime? EndDate { get; set; }
 
    /// <summary>
    /// 签约状态，0——全部，1——已签约，2——已解约
    /// </summary>
    public 专户状态? Status { get; set; }
}